package chpt02;
import java.util.Arrays;
import  java.util.Scanner;

public class SimFunctions {

	public static void main(String[] args) {
		Scanner in=new Scanner(System.in);
        String[] strDigits;
        int[] digits=null;
        while(in.hasNextLine()){
            String choice=in.nextLine();
            if(choice.equals("fib")){
				   	int n=Integer.parseInt(in.nextLine()); 	
				    	fib(n);
		    } 
            else if(choice.equals("sort")){
				String line=in.nextLine();
				strDigits=line.split(" ");
				digits=convertToIntDigits(strDigits);
				Arrays.sort(digits);
				System.out.println(Arrays.toString(digits));
            }
            else if(choice.equals("search")){
				Arrays.sort(digits);
				int digit=Integer.parseInt(in.nextLine());
				int pos=Arrays.binarySearch(digits, digit);
				if(pos<0) System.out.println(-1);
				else System.out.println(pos);
            }
            else if(choice.equals("getBirthDate")){
				int y=Integer.parseInt(in.nextLine());
			    for(int i=0;i<y;i++){
			    	String id=in.nextLine();
			    	System.out.println(getBirthDate(id));
			    }
            }
            else {
            	System.out.println("exit");
            
            }
        }
        in.close();
}
	   public static void fib(int n) {
            if(n==1) System.out.println("1");
            else if(n==2){
            	System.out.println("1 1");
            }
            else{
		    	int n1=1,n2=1,sn=0;
		    	System.out.print("1 1");
				for(int i=2;i<n;i++){
					sn=n1+n2;
					n1=n2;
					n2=sn;
					System.out.print(" "+sn);
				}
            }
			System.out.println("");
		}
		private static String getBirthDate(String id) {
	    	String s=id.substring(6,10)+"-"+id.substring(10,12)+"-"+id.substring(12,14);
	    	return s;
		}
		private static int[] convertToIntDigits(String[] strDigits) {
			int[] a=new int[strDigits.length];
			for(int i=0;i<strDigits.length;i++){
				a[i]=Integer.parseInt(strDigits[i]);
			}
			return a;
		}
	
}